Original idea extraction from written text data

ABSTRACT

Original idea extraction from written data is provided by capturing expression as written text data, obtaining a knowledge graph representing concepts and relationships between the concepts, automatically topic modeling the written text data to ascertain thought units and identify respective concepts of the thought unit, mapping a thought unit to the knowledge graph, determining that the thought unit is an original idea, and based on determining that the thought unit is an original idea, storing a representation of the original idea to an idea repository and invoking processing of at least one computer.

BACKGROUND

Individuals express ideas in various settings, including inconversations and other communications with others. Individuals expressideas between and among each other at conferences and other networkingevents, for instance both internal and external to an individual'sbusiness or work setting. Networking with others both during and aftercan be an important aspect of conferences and other business events.

Current approaches do not facilitate the identification of originalideas in an automatic and systematic manner. For instance, currentapproaches do not link what is being expressed by users with apredefined corpus of information to detect originality and commonalitiesin ideas expressed by individuals. In a particular approach, a largetable is used to find co-occurrences of a same term in various socialmedia posts and create a direct relationship between them to improve asearch result. However, there is no cognitive component to find and linknew ideas and the individuals expressing them. Furthermore, thefiltering of new ideas and linking together individuals expressingsimilar original ideas is not provided.

SUMMARY

Aspects described herein support the identification of original ideas inan automatic and systematic manner. This advantageously enables, forexample, networking of people with other people having similar ideas andpotentially differing backgrounds to foster collaboration andinnovation. Although some aspects are described in the context ofconversations at a conference or other event, the disclosure is notlimited to this specific application and instead supports the extractionof novel/original ideas and assistance in networking individuals fromany settings.

Shortcomings of the prior art are overcome and additional advantages areprovided through the provision of a computer-implemented method. Themethod electronically captures expression of one or more individuals aswritten text data using one or more electronic devices. The methodobtains a knowledge graph data structure for a knowledge dataset, theknowledge graph including representations of concepts and relationshipsbetween the concepts as identified from the knowledge dataset. Themethod ascertains thought units expressed in the written text data, andidentifies, for each thought unit, a respective set of concepts of thethought unit. The method maps a thought unit of the thought units to theknowledge graph by correlating the concepts of the thought unit to acorrelated set of concepts represented in the knowledge graph. Themethod determines that the thought unit is an original idea and, basedon determining that the thought unit is an original idea, stores arepresentation of the original idea to an idea repository and invokingprocessing of at least one computer. The method has an advantage that itenables links between what is being expressed and already existingconcepts derived from a corpus of information to detect novelty andcommonalities among ideas.

Further, a computer system is provided that includes a memory and aprocessor in communication with the memory, wherein the computer systemis configured to perform a method. The method electronically capturesexpression of one or more individuals as written text data using one ormore electronic devices. The method obtains a knowledge graph datastructure for a knowledge dataset, the knowledge graph includingrepresentations of concepts and relationships between the concepts asidentified from the knowledge dataset. The method ascertains thoughtunits expressed in the written text data, and identifies, for eachthought unit, a respective set of concepts of the thought unit. Themethod maps a thought unit of the thought units to the knowledge graphby correlating the concepts of the thought unit to a correlated set ofconcepts represented in the knowledge graph. The method determines thatthe thought unit is an original idea and, based on determining that thethought unit is an original idea, stores a representation of theoriginal idea to an idea repository and invoking processing of at leastone computer. The computer system has an advantage that its processingenables links between what is being expressed and already existingconcepts derived from a corpus of information to detect novelty andcommonalities among ideas.

Yet further, a computer program product including a computer readablestorage medium readable by at least one processor and storinginstructions for execution by the at least one processor is provided forperforming a method. The method electronically captures expression ofone or more individuals as written text data using one or moreelectronic devices. The method obtains a knowledge graph data structurefor a knowledge dataset, the knowledge graph including representationsof concepts and relationships between the concepts as identified fromthe knowledge dataset. The method ascertains thought units expressed inthe written text data, and identifies, for each thought unit, arespective set of concepts of the thought unit. The method maps athought unit of the thought units to the knowledge graph by correlatingthe concepts of the thought unit to a correlated set of conceptsrepresented in the knowledge graph. The method determines that thethought unit is an original idea and, based on determining that thethought unit is an original idea, stores a representation of theoriginal idea to an idea repository and invoking processing of at leastone computer. The computer program product has an advantage thatexecution of the instruction enables links between what is beingexpressed and already existing concepts derived from a corpus ofinformation to detect novelty and commonalities among ideas.

Additional features and advantages—optional, permissive, preferred,and/or advantageous—are realized through the concepts described herein.

The capturing of the expression as written text data can includetransforming a voice stream of a user to a textual representation of thevoice stream. Additionally or alternatively, the capturing expression aswritten text data can include transforming at least drawings and/or usergestures, to a textual representation. These have an advantage that theexpressions can be received in any of a variety of formats and aspectsdescribed herein applied thereto in order to identify original ideasfrom those expressions.

The knowledge graph can be an extended knowledge graph. The obtaining ofthe extended knowledge graph can further include obtaining an initialknowledge graph based on the knowledge dataset. Obtaining the extendedknowledge graph can further include extending the initial knowledgegraph based on a specific technical or scientific domain to obtain theextended knowledge graph. The extending can add representations ofadditional domain-focused concepts and/or additional domain-focusedrelationships between concepts represented in the initial knowledgegraph. This has an advantage that it enables tailoring or specializingthe knowledge graph to a specific domain, to thereby tailor theidentification of ideas that may be original for that domain.

The concepts of the thought unit can include concepts explicitlyexpressed in the written text data as the thought unit and one or moreconcepts identified from a context in which the thought unit wasexpressed. This has an advantage that concepts which are implied but notnecessarily expressly stated may augment the thought unit and factorinto whether a thought unit is considered an original idea.

The thought unit may be characterized by an identification of anindividual expressing the thought unit, the identified concepts of thethought unit, at least one sentiment score of the thought unit, and anindication of any other individuals receiving a communication in whichthe thought unit was expressed by the individual. This has an advantagethat thought units have associated properties (e.g. concepts,sentiments) that can be used in the identification of originality andproperties (e.g. sentiments, indication of involved individuals) thatcan be used in determining whether to network individuals together.

The determining that the thought unit is an original idea can includedetermining, for each pair of concepts of the correlated conceptsrepresented in the knowledge graph, a respective shortest graph distancebetween the pair of concepts. The determining the respective shortestgraph distance between the pair of concepts can also include determiningwhether a shortest graph distance between a pair of concepts of thecorrelated concepts represented in the knowledge graph exceeds athreshold. The thought unit may be deemed an original idea based ondetermining that the shortest graph distance between the pair ofconcepts exceeds the threshold. This has an advantage that thedetermination of originality may be tailored as desired usingthresholding and based on distances between concepts.

The determining that the thought unit is an original idea can furtherinclude determining whether each shortest graph distance between atleast one additional pair of concepts of the correlated conceptsrepresented in the knowledge graph exceeds the threshold. The thoughtunit may be deemed an original idea based on determining that eachshortest graph distance between the at least one additional pair ofconcepts exceeds the threshold. This has an advantage that thedetermination of originality can be tailored as desired to requireseveral instances of the expression of relatively distant concepts,providing greater confidence that an expressed idea is original.

The determining that the thought unit is an original idea may be furtherbased on a cardinality of the set of concepts of the thought unitexceeding a threshold, which has an advantage that it enables tailoringof a complexity requirement (number of concepts expressed) for thethought units in the identification of original ideas.

In some embodiments, a method further includes assigning relevancescores to the concepts of the thought unit, and the determining that thethought unit is an original idea may be further based on the relevancescores assigned to the concepts. Additionally or alternatively,obtaining the knowledge graph can further include assigning weights tothe concepts represented in the knowledge graph, and the determiningthat the thought unit is an original idea may be further based on theweights assigned to the correlated concepts represented in the knowledgegraph. The weight assigned to a concept represented in the knowledgegraph may be based on an area of innovation to which the conceptpertains and/or a frequency or trend in coverage of the concept in newsmedia, as examples. These aspects have an advantage that they enabledifferent concepts to contribute differently to the determination oforiginality, enabling concepts to be emphasized and deemphasized asdesired to influence the prominence and contribution requirement forsome concepts in identified original ideas.

The invoking processing of at least one computer can invoke provision ofa graphical user interface that indicates the representation of theoriginal idea to an individual, of the one or more individuals, whoexpressed the thought unit, to notify the individual that the thoughtunit is an original idea. This has an advantage that the original ideasthe users express can be electronically presented to them.

In some embodiments, a method includes comparing the thought unit toother thought units determined to be original ideas and havingrepresentations thereof stored in the idea repository. The method mayalso include identifying another thought unit, of the other thoughtunits, for which the thought unit and the another thought unit share acommon pair of concepts represented in the knowledge graph. The one ormore individuals can include a first individual who expressed thethought unit and a second individual who expressed the another thoughtunit. These aspects have an advantage that correlation of same/similarideas can be leveraged to bring together the idea generators.

Based on determining that the expression of the thought unit by thefirst individual and expression of the another thought unit by thesecond individual were not made in a common conversation between thefirst individual and second individual, the invoking processing of theat least one computer can include providing a first electroniccommunication to a first computer of the first individual and providinga second electronic communication to a second computer of the secondindividual, the first and second electronic communications to networktogether the first and second individuals. These have an advantage thataspects can network individuals with other individuals having similarideas to foster collaboration and innovation, and an advantage ofrefraining from attempting to network individuals who are alreadynetworked by virtual of them being involved in the conversation.

In some embodiments, a method includes ascertaining a first sentimentscore of the thought unit and a second sentiment score of the anotherthought unit. The method can also include determining whether to networktogether the first and second individuals based on the first and secondsentiment scores. These aspects have an advantage that they enabletailoring which individuals are introduced to each other based on theirsentiments. This can advantageously give selectability and control tobring together individuals with common sentiments, opposing sentiments,or some other desired relation between their expressed sentiments. Thetone and sentiments in the fostered meaningful discourse may becontrolled in this manner.

BRIEF DESCRIPTION OF THE DRAWINGS

Aspects described herein are particularly pointed out and distinctlyclaimed as examples in the claims at the conclusion of thespecification. The foregoing and other objects, features, and advantagesof the invention are apparent from the following detailed descriptiontaken in conjunction with the accompanying drawings in which:

FIG. 1 depicts an example knowledge graph in accordance with aspectsdescribed herein;

FIG. 2 depicts the example knowledge graph of FIG. 1 and illustrates athought unit mapped to the knowledge graph, in accordance with aspectsdescribed herein;

FIG. 3 depicts the knowledge graph of FIG. 2 and illustrates distancemeasures from a node of the thought unit to the other nodes of thethought unit, in accordance with aspects described herein;

FIG. 4 depicts the knowledge graph of FIG. 2 and illustrates two thoughtunits sharing concepts represented in the knowledge graph, in accordancewith aspects described herein;

FIG. 5 depicts an example process for original idea extraction fromwritten text data, in accordance with aspects described herein;

FIG. 6 depicts an example process for networking individuals togetherwho express overlapping concepts in original ideas, in accordance withaspects described herein;

FIG. 7 depicts an example process of identifying an original idea, inaccordance with aspects described herein;

FIG. 8 depicts an example process for capturing expression of anindividual as written text data, in accordance with aspects describedherein;

FIG. 9 depicts an example process for obtaining a knowledge graph datastructure, in accordance with aspects described herein;

FIG. 10 depicts an example process for determining whether a thoughtunit is an original idea, in accordance with aspects described herein;

FIG. 11 depicts an example process for invoking processing of at leastone computer, in accordance with aspects described herein;

FIG. 12 depicts another example process for invoking processing of atleast one computer, in accordance with aspects described herein;

FIG. 13 depicts one example of a computer system and associated devicesto incorporate and/or use aspects described herein;

FIG. 14 depicts a cloud computing environment according to an embodimentof the present invention; and

FIG. 15 depicts abstraction model layers according to an embodiment ofthe present invention.

DETAILED DESCRIPTION

Described herein are facilities for processing written text data toextract original ideas, relative to a knowledge dataset, based onexpression input from one or more individuals. Additional aspects canelectronically present the original ideas to one or more individuals,for instance in an effort to link individuals who expressed same orsimilar ideas and may not have otherwise been aware of their commonexpressions.

Input to be analyzed, the input coming from individual users, can bereceived from different sources and potentially from one or morelocations. Some input may be written documents, corporate wide blogs,emails, public information on the Internet, communications, or the likefrom the individuals. This input may be stored as written text data.Other input may be captured, transformed into written text data, andstored as such. One example other input may be audio data, such as avoice stream of the individual speaking, which may be captured using oneor more microphones and then transformed into written text data. Anotherinput may be drawings, sketches, or other pictorial expressions that maybe analyzed and abstracted, tagged or otherwise expressed into writtentext form. Yet another input may be gestures made by the individual, thegestures captured using one or more sensors, such as camera devices, andtransformed into written text data. In this manner, many different typesof sensors or other devices can capture expression of the user (whateverthe electronic format thereof, and if needed, transform the expression)in a written text form.

The written text data may be further abstracted into so called conceptswhich can norm wordings. As an example, a concept could be “New York”and words/phrases like “Big Apple” or “NY” are mapped to “New York” asthey may be considered synonyms represented with the phrase “New York”.

If an individual mentions or expresses a collection of differentconcepts together but, based on a general or specific knowledge dataset,some concepts do not appear to be closely related, the combination ofconcepts may be considered an original, novel, potentially new idea. Arepresentation of the idea may be stored and used in any of variousways. As an additional aspect, if two or more individuals express sameor similar original ideas but are not yet linked together, theindividuals may be networked by a networking assistant.

Accordingly, provided are capabilities of identifying novel ideascharacterized by the new composition of known component concepts,bridging similar novel ideas, and bringing together the individualsexpressing those novel ideas.

A knowledge graph is introduced that includes nodes and edges, wherenodes represent concepts and two nodes are linked with an edge if theconcepts represented by the nodes are considered related to each other.A baseline for a comprehensive knowledge graph can be derived from aknowledge dataset, such as a dataset of encyclopedic knowledge. Oneexample knowledge dataset is a collection of online articles, such asthose provided by Wikipedia. Using this example, each Wikipedia entry(page on a given topic) may be a concept represented as a node, and anedge is drawn between two nodes if the two corresponding pages link to,mention, or describe each other.

In some examples, an initial knowledge graph is built from an onlinedataset or obtained, already built, from another source, and thenextended with more relevant details of a specific domain, such as anindustry-specific, technology-specific, or science-specific domain. Anexample specific domain is as specific academic or non-academic journal.In extending the initial knowledge graph, additional nodes (representingadditional concepts) may be added to the knowledge graph and/oradditional edges may be drawn between nodes (representing additionallinkages between concepts) as identified in the specific-domain that isextending the knowledge graph. In some examples, it is an existingenterprise-wide (non-public) knowledge graph that is extended asdesired.

FIG. 1 depicts an example knowledge graph in accordance with aspectsdescribed herein. The knowledge graph may be implemented as one or moredatabases/data structures of one or more computer systems. The datastructures may be implemented to enable efficient exploration andtraversal thereof to facilitate searching and processing of theknowledge graph.

Show in FIG. 1 are thirteen nodes (representing thirteen distinctconcepts) labeled 102 through 126, and fifteen edges representingrelationships (e.g. linkages) between the thirteen nodes. An edge isdrawn between two nodes based on the presence of some relation betweenthe two corresponding concepts. In FIG. 1 , edge 103 represents arelationship between the two distinct concepts represented by nodes 102and 104.

A thought unit is considered a setting of an input from an individualabout a specific topic. This can be a paragraph in a text document orwithin a discussion, as examples. More generally, the thought unit maybe the input (expression) from an individual person until there is atopic change in the conversation, text document, or other expression.

A thought unit can be extended with overarching concepts that may not beexplicitly expressed but may be implied from a context in which theexpression occurs. For instance, if the expression is an audio stream ofa conversation involving two people at an industry conference, then,although neither person expresses the overall purpose or subject of theconference, that might be added as a concept to each thought unitexpressed by either of the two people.

In a particular embodiment, a thought unit (TU) is expressed as follows:

TU=(P _(i),Time,{concept₁, . . .,concept_(n)},sentiment_(positive),sentiment_(negative) ,{P _(k) , . . .,P ₁})

P_(i) is an identification of an i-th individual who expressed thethought unit. Time is a time stamp (e.g. day, time) when the thoughtunit was started. {concept1, . . . , concept} are the n extractedconcepts within the thought unit. Sentiment_(positive) andsentiment_(negative) are values representing or highlighting positiveand/or negative sentiments associated to the thought unit (e.g. athought unit can a value for positive sentiment and a value for negativesentiment associated therewith). {P_(k), . . . , P₁} is a list of anyother individuals who were involved in the discussion/expression whenthe P_(i) individual expressed this thought unit.

Generally, a process for original idea extraction from written text datais as follows: Using a preprocessed (e.g. built up-front orpre-established) knowledge graph, map concepts from a particular thoughtunit to the knowledge graph. Analyze whether the concepts of the thoughtunit build an original idea. This is done by measuring whether conceptsare sufficiently distant from each other in terms of their relation toeach other as indicated in the knowledge graph. If the thought unitconstitutes an original idea, add the original idea (e.g. a digitalrepresentation thereof) to an idea pool, such as one stored on a storagedevice. This practice is termed idea extraction. Additionally, if it isdetermined that more than one person has expressed the same or a similaroriginal idea (e.g. similarity dictated by whether the two correspondingthought units share one or more edges in the knowledge graph), then thisindicates the individuals expressed the same/similar idea. The processcan connect these individuals, acting as a networking assistant, forcollaboration.

In some examples, the decision to network two individuals can be basedon the sentiments of their respective thought units. On the one hand, itmay be desired to electronically communicate with and network togethertwo individuals who expressed the same/similar idea with similarpositive sentiments. On the other hand, it may be interesting toelectronically communicate with and network together two individuals whoexpressed opposing sentiments in the overlapping thought units.

Additionally or alternatively, it can be ascertained whether overlappingthought units were expressed by two individuals involved in the sameconversation, discussion, or the like. If so, networking of thoseindividuals may be avoided on the basis that they have already networkedor collaborated relative to the idea.

Aspects of idea extraction are described with reference to FIGS. 2 and 3. Generally, input from a person is first mapped into different conceptsthat are represented as nodes within a knowledge graph. FIG. 2 depictsthe example knowledge graph of FIG. 1 further illustrating a thoughtunit mapped to the knowledge graph, in accordance with aspects describedherein. In FIG. 2 , the thought unit of the person is visualized as acollection of three different concepts, i.e. the concepts represented bynodes 102, 104 and 126 and connected using dashed lines in FIG. 2 . Thethought unit is mapped to the knowledge graph (nodes thereof) bycorrelating the concepts of the thought unit to a correlated set ofconcepts represented in the knowledge graphs. Here, the correlated setof concepts are represented by nodes 102, 104, and 126.

The thought unit indicated in FIG. 2 is identified from a topicexpressed by the person. By way of a first specific example, the systemcaptured a conversation involving the person and the person spoke,discussed, or otherwise expressed the three concepts as part of a singletopic. By way of a second specific example, the system analyzes aparagraph of text written by the person and the paragraph mentions thethree concepts indicated.

As a next step, graph distances in the knowledge graph between thecorrelated concepts are ascertained and used in determining whether thethought unit is an original/novel idea. By way of specific example, foreach pair of concepts in the thought unit (i.e. represented by thecorrelated concepts in the knowledge graph), a length of the shortestpath between that pair is determined. One efficient option to determinesuch a shortest path between a pair of nodes in a graph is by utilizingDijkstra's algorithm.

FIG. 3 depicts the knowledge graph of FIG. 2 and illustrates distancemeasures from a node of the thought unit to the other nodes of thethought unit, in accordance with aspects described herein. FIG. 3 showsdistance measures, D=_, from node 104 to all other nodes in theknowledge graph, the distance measures being the length of the shortestpath to the target node from node 104. Thus, FIG. 3 depicts avisualization of the shortest path from one concept (represented by node104) to each of the two other concepts (represented as nodes 102 and126) using only the edges of the knowledge graph. Specifically, theshortest path {104-108-110-116-118-124-126} between nodes 104 and 126 isshown as a dashed line connecting node 104 to node 126, and shortestpath {104-102} between nodes 104 and 102 is shown as a separate dashedline in FIG. 3 .

With this approach, a set of graph distances—distances of the shortestpaths between concepts as represented by nodes of the knowledge graph—isobtained. This set is denoted: {shortest path (i,j)} for all i,jexisting in the thought unit. A maximum shortest path between all theconcepts of the thought unit is the maximum distance in the set of graphdistances, and can be represented as:

$\max\limits_{i,{j \in {{concepts}{in}{TU}}}}\left\{ {{shortest}{path}\left( {i,j} \right)} \right\}$

The above expression indicates the distance/length of the maximumshortest path between pairs of concepts of the thought unit. In someembodiments, this particular shortest graph distance is used todetermine whether the thought unit is considered original. The greaterthe distance between concepts in a knowledge graph, the less directlythese concepts relate to each other. This may be based on threshold(s).So, by way of example, if the maximum shortest graph distance exceedssome certain threshold value (e.g. 5), the combination of concepts (104,126) is seen as novel and hence the entire thought unit (102, 104, 126)is considered a novel idea.

Various other approaches are possible for determining whether a thoughtunit is original. One approach considers a thought unit original only ifthe shortest distances between several different pairs of concepts ofthe thought unit exceed the given threshold. In the example above, itmay be required that two different pairs of concepts have a respectiveshortest distance exceeding 5.

Yet another approach involves a more complex function that might accountfor the number of considered concepts within a thought unit (i.e. acardinality—number of elements—in the set of concepts included in thethought unit).

Networking aspects are also provided to network individuals together whohave expressed original thought units that overlap in terms of concepts.The individuals expressing these thought units may be contacted by anetwork assistant via electronic communications to network theindividuals together.

FIG. 4 depicts the knowledge graph of FIG. 2 and illustrates two thoughtunits sharing concepts represented in the knowledge graph, in accordancewith aspects described herein. In FIG. 4 , one thought unit expressed bya first person encompasses concepts 102, 104 and 126 (shown connected bylong-dashed lines). As explained above, this thought unit is found to beoriginal on the basis that the shortest distance between nodes 104 and126 exceeds the threshold of 5. A second thought unit expressed by asecond person encompasses concepts 104, 106 and 126 (shown connected byshort-dashed lines). This second thought unit also constitutes anoriginal idea because it too includes nodes 104 and 126, which have ashortest distance of 6 between them, and 6 exceeds the threshold set at5. There is overlap between the thought units in terms of the conceptsthey both include (104, 126).

The networking aspects can be further extended to account for theparticular sentiment(s) of thought units and network the individualsonly if the thought unit sentiments, either positive or negativesentiments, are sufficiently in alignment (for instance both positive)with each other or satisfy some other sentiment goal. In an alternativeembodiment, the sentiment goal may be to match individuals with opposingsentiments about a given idea or combination of concepts. It may bedesired to match such individuals if sentiments are sufficientlydifferent, for instance one person who expresses a largely positivesentiment in expressing a first thought unit with another person whoexpresses a largely negative sentiment in expressing a second thoughtunit that overlaps the first thought unit. Since sentiments may beexpressed as values, comparison between sentiment values may be made inany desired manner, for instance using percentages or thresholds fordictating whether sentiments are sufficiently similar or different.

Additionally or alternatively, networking of two individuals togethermay consider whether the two individuals were involved in a commonexpression (conversation, discussion, co-authored document, etc.). Ifthey were involved in the same conversation or other common expression,then it may not be of any value to network them together because theyapparently already have a connection by virtue of their collaborationthat produced the expressions from which their overlapping thought unitswere extracted.

As noted, sentiment analysis can be applied to a thought unit. Knownalgorithms and techniques can provide positive and negative sentimentvalues for a phrase, sentence, paragraph, etc., the sentiment valuescorresponding to, for instance, positive and negative wordings used inthe expression. In some embodiments, the sentiment output is eitherneutral, positive, negative, or mixed. Additionally or alternatively, asentiment scale may be generated, for instance one ranging from −10(most negative sentiment) to +10 (most positive sentiment). In additionto possibly using the sentiment in the networking aspects describedabove, another enhancement uses the sentiment information to dictatewhich ideas (e.g. only positive or only very positive) are to beextracted and stored as original ideas.

Various scores of concept relevance may be implemented and used invarious manners. For instance, indicators of relevance of the conceptsmay be incorporated within a thought unit, in which each concept ismeasured with a relevance score, for instance how relevant the conceptis compared to other concepts within the thought unit. One way ofmeasuring the relevance of a given concept within a thought unit is tocount how often the concept was mentioned in the expression of thethought unit. This may include counting references to “it” when it isclear what concept “it” refers to. The relevance score can be integratedinto the determination of whether or not concepts are original. Forinstance, originality of a thought may be dictated in part based on someconcept of the thought unit having a minimum relevance score.

The knowledge graph can indicate relevant concepts if desired. In thismanner, a thought unit touching on highly relevant concept(s) in theknowledge graph may more easily be deemed original if it incorporates ahighly relevant concept in the knowledge graph. The relevance may beimplemented as an extension to the knowledge graph to add weights to theconcepts. Each node of the knowledge graph can have a certain relevancedetermined based on a pre-processing step. One approach is to use hypecycle research methodology (for instance that provided by Gartner Inc.,Stamford, Connecticut, U.S.A.) to identify which concepts match toinnovative areas and should therefore be prioritized for ideaextraction. Another approach is to count the frequency of each conceptin news and other media publications for a fixed relevance score, orfocus on the change over time of this frequency to identify trends onwhich to base the setting of set relevance scores.

One practical use case for aspects described herein is its applicationto conferences or larger meetings where different groups of peoplediscuss new ideas, perhaps during breaks or intermissions, in thecontext of the conference/meeting topics that are the subject of theconference or meeting. Such a scenario is an opportunity to extract,match, and interconnect the conference participants. As an example,microphones, cameras, and/or other sensors or devices are positioned inthe physical environment, for instance on tables around whichindividuals meet, and such sensors/device capture expressions of theindividuals. This data may be gathered to a central location/backendcomputer system(s) for processing. A central repository may be providedwhere the harvested ideas are stored and potentially processed. It isnoted that various types of input devices like smart wearables such aseyewear gadgets or smart watches, or more widely distributed deviceslike smart phones, tablets or computers with a microphone may be used tocapture expressions and/or perform some of the processing describedherein to ascertain thought units, map to a knowledge graph, determinewhether ideas are original, and network individuals together.

Automation for idea extraction can proceed by way of receiving input viaan application programming interface (API) allowing to transmit voice,text, and other digitally captured expressions. How this input isgathered is independent of the application of the extraction itself. Acentral cognitive instance/engine processes the input received from thevarious sources, ascertains the thought units and identifies originalthought units based on the knowledge graph, and compares them to acurrent inventory of original thought units. This may be offered as aservice (e.g. to customers) and implemented using a container technologyto instantiate containers for processing in public and/or privatedeployment models. Further in an embodiment, two instances of datastores may be provided—a first data store to store the knowledge graphand a second data store to store the original thought units/ideas andresults. A visual portal, for instance a web-based or mobileapplication-based portal, can be provided that allows theservice-recipient and/or individual users to explore the capturedoriginal thought units and possible matches. For example, an individualuser could view the thought units captured from his/her expressions andreceive indications on the interface of the portal that indicate whichare original ideas. The portal interface could also display whichparticipants are, or are to be, interlinked based on similarity in theiroriginal ideas, and can also indicate the ideas of others which havebeen identified as corresponding to the ideas of the individual user.

FIG. 5 depicts an example process for original idea extraction fromwritten text data, in accordance with aspects described herein. Aspectsof the process may be performed by one or more computer systems.Initially, various data sources are used to capture inputs (502) such aswritten text, voice, drawings, gestures, and other formats. The processthen determines whether input is in a written text format (504). Anysuch input that is not in written text format is transformed to writtentext data (506). The particular technique applied to perform thistransformation may depend on the particular input/input source, thoughexisting transformation techniques may be leveraged to perform suchtransformation.

Using stemming and/or other approach(es), the process extracts conceptsexpressed from the written text data (508) and extracts sentiment (e.g.positive, neutral, negative) for each concept (510). The process thenmaps the extracted concepts onto the reference data source, such as aknowledge graph as in the examples described herein (512).

The process then ascertains originality of the idea (514), for exampleby computing the maximum shortest path between each pair of concepts ofthe thought unit. If the maximum shortest path is longer than a certainthreshold value, the combination of concepts may be viewed as novel andthe complete thought unit classified as novel/original.

A determination is made as to whether the idea is original (516), e.g.‘yes’ or ‘no’, as ascertained by 514). The determination may be based onwhether the threshold was exceeded. If so (516, Y), the process storesthe identified novel idea—the complete thought unit—in an idea pool(518), for instance a database or other collection of representations ofthe ideas. Otherwise the idea is not original (516, N), and the processends.

FIG. 6 depicts an example process for networking individuals togetherwho express overlapping concepts in original ideas, in accordance withaspects described herein. Aspects of the process may be performed by oneor more computer systems. Initially, an attempt is made to correlate anoriginal idea newly discovered and/or in the idea pool with other ideasof the idea pool. It is determined whether there is a match found (604)between two original ideas. A match may be found when at least onecombination of concepts common to two thought units has a shortest pathbetween the correlated concepts in the knowledge graph that is longerthan the threshold value. If no match is found (604, N) then the processends.

Otherwise, a match is found (604, Y) and the individuals are potentiallyto be linked together. Then, it is determined whether sentiment of theoriginal ideas is to influence the notification of the involved persons(i.e. whether sentiment matters to the matching) (606). This is madewith an inquiry as to whether a particular sentiment goal exists. Inthis example, a same (or similar) sentiment of the two ideas is apre-requisite for networking the two individuals who expressed thematched thought units. If only same/similar sentiments are allowed (606,Y), the process proceeds by determining whether the same sentiment ispresent in both original ideas (608). If the same sentiment is notpresent in the original ideas (608, N), the condition for networking isnot satisfied, and the process ends.

If instead at 606 it was determined that any sentiment is allowed, orafter determining at 608 that the two original ideas have a same/similarsentiment, the process proceeds by determining whether distinct personswere involved in the expression of each of the two original thoughtunits (610), i.e. whether it was the same group of people who wereinvolved in the expression of both thought units. If distinct personswere not involved (610, N), the process ends and no notification tonetwork the individuals is triggered. Otherwise, the process notifiesthe involved group of people (612), for instance by way of electronicalerts, communications, app notifications, or indications on a graphicaluser interface that the person accesses. This can enable the group ofpeople to collaborate in exploring the same/similar idea.

Accordingly, provided is a system capable of identifying novel ideascharacterized by the new composition of known concepts and stored in areference source with logical links between the concepts, and networkingtogether authors of similar novel ideas. In some examples, a novel ideais defined based on a mathematical distance between the concepts of theidea as represented in a knowledge graph. The distance may beproportional to a number of logical links that connect the concepts. Areference source to which the expressed thought units are mapped may berepresented through a knowledge graph. Additionally, multiple factorsmay be used to bridge similar ideas and network together the expressingusers. Sentiment (positive and negative) of the idea, and the particularindividuals involved in the expression of the idea and contribution tothe idea are example factors.

Aspects described herein advantageously enable links between what isbeing expressed and already existing concepts derived from a corpus ofinformation, to detect novelty and commonalities. This is in contrast toapproaches, for example those that find co-occurrences of a same term insocial media or other posts and create a direct relationship betweenentities, where there is also no cognitive component to ascertain andlink new ideas.

FIG. 7 depicts an example process of identifying an original idea, inaccordance with aspects described herein. Aspects of the process of FIG.7 may be performed by one or more computer systems, and differentaspects may be performed by different computer systems, such as thosedescribed herein, which may include one or more mobile or wearabledevices, sensors, backend analytical platforms or server computersystems, one or more cloud servers, and/or any other computer system(s).

The process begins by electronically capturing expression of one or moreindividuals as written text data (702) using one or more electronicdevices. The written text data may be in text form as received, or itmay be derived from expressions in other forms (voice, gestures,drawings, etc.), which expressions are transformed to written text data.Thus, by way of example, the capturing expression as written text datacan include capturing and transforming a voice stream of a user to atextual representation of the voice stream, and/or capturing andtransforming drawings and/or user gestures to a textual representation.

The process continues by obtaining a knowledge graph data structure fora knowledge dataset (704). Obtaining can include obtaining it fromanother source or building it, as examples. An example dataset is theWikipedia collection of articles. The knowledge graph can includerepresentations of concepts (i.e. as nodes of the graph) andrelationships between the concepts (i.e. as edges of the graph) asidentified from the knowledge dataset. The knowledge graph may be anextended version of a knowledge graph, as described further withreference to FIG. 9 . Additionally or alternatively the knowledge graphmay be a subset derived from a larger knowledge graph.

Continuing with FIG. 7 , the process automatically topic-models thewritten text data to ascertain a plurality of thought units expressed inthe written text data and identify, for each thought unit, a respectiveset of concepts of the thought unit (706). The analysis identifiestopics/thought units and from there it can be determined which conceptsbelong to which thought units.

The concepts of the thought unit can include not only concepts that wereexplicitly expressed in the written text data as the thought unit, butalso concept(s) identified from other information, for instance thoseidentified from a context in which the thought unit was expressed. Oneexample is an expression made at a conference for the treatment of agiven health affliction. The concept that is the given healthaffliction, though perhaps not explicitly mentioned in the thought unit,may be added to the thought unit on the basis that it was a context inwhich the thought unit was expressed.

The thought unit can be characterized by an identification of anindividual expressing the thought unit, the identified concepts of thethought unit, at least one sentiment score of the thought unit, and anindication of any other individuals receiving a communication in whichthe thought unit was expressed by the individual.

The process of FIG. 7 continues by mapping a thought unit of theplurality of thought units to the knowledge graph (708) by correlatingthe concepts of the thought unit to a correlated set of conceptsrepresented in the knowledge graph. The correlated set of conceptsrepresented in the knowledge graph are the concepts of the knowledgegraph (represented as nodes therein) to which the thought unit conceptsmap. The concepts of the thought unit and the correlated set of conceptsmay be the same concepts. The process then determines whether thethought unit is an original idea (710). As an example, this can be basedon a graph distance in the knowledge graph between at least some of thecorrelated concepts represented in the knowledge graph, as explainedwith reference to FIG. 10 . Additionally or alternatively, determiningwhether the thought unit is an original idea may be based on acardinality of the set of concepts of the thought unit exceeding athreshold. In this regard, novelty of a thought unit may be based inpart on the number of concepts of the thought unit.

If the thought unit is determined not to be an original idea (710, N),the process ends. Otherwise, based on determining that the thought unitis an original idea (710, Y), the process stores a representation of theoriginal idea to an idea repository and invokes further processing, forinstance of at least one computer (712). Example further processing isthe processing to send a notification to a user (e.g. a computer systemof the user) or provide a portal interface that informs anindividual/user of the original idea. Other example further processingis processing to send some communication to an individual to networkthat person with another person who had a same/similar original idea.FIGS. 11 and 12 illustrate these examples.

Obtaining the knowledge graph (704) can include assigning weights to theconcepts represented in the knowledge graph. The determining that thethought unit is an original idea can be further based on those weightsassigned to the correlated concepts represented in the knowledge graph.The weight assigned to a concept represented in the knowledge graph maybe based on at least an area of innovation to which the concept pertainsand/or a frequency or trend in coverage of the concept in news media, asexamples. An embodiment in which obtaining the knowledge graph includesassigning weights to the concepts represented therein and thedetermining that the thought unit is an original idea is based on theweights has an advantage that it enables different concepts tocontribute differently to the determination of originality, enablingconcepts to be emphasized and deemphasized as desired to influence theprominence and contribution requirement for some concepts in theprocessing to identify original ideas. An embodiment where the weightassigned to a concept represented in the knowledge graph may be based onat least an area of innovation to which the concept pertains and/or afrequency or trend in coverage of the concept in news media is alsouseful for enabling popular, trending, or frequently covered concepts tobe emphasized and deemphasized as desired to influence the prominenceand contribution requirement for some concepts in identified originalideas.

Additionally or alternatively, an optional aspect assigns relevancescores to the concepts of the thought unit. The determining that thethought unit is an original idea may be further based on the relevancescores assigned to the concepts. An embodiment in which relevance scoresare assigned to the concepts of the thought unit and the determiningthat the thought unit is an original idea is further based on therelevance scores assigned to the concepts has an advantage that itenables different concepts to contribute differently to thedetermination of originality, enabling concepts to be emphasized anddeemphasized as desired to influence the prominence and contributionrequirement for some concepts in identified original ideas.

In addition to the above, sentiment scores of thought units may beascertained and a determination made based thereon about whether tonetwork together individuals based on the sentiment scores ofsame/similar expressions.

FIG. 8 depicts an example process for capturing expression of anindividual as written text data, in accordance with aspects describedherein. The process may be performed by one or more computer systems.The process initially uses sensors/devices to acquire expression data(802). Expression data may be electronic computer data that captures,contains, represents, or indicates one or more expressions of theindividual. As examples, the acquisition acquires documents, capturesvoice, drawings, gestures, etc. using sensors/devices. The process thentransforms each expression data that is not written text data (voicestream, drawings, gestures, etc.) to a textual representation (804),i.e. to capture the expression data as written text data, and ends.

FIG. 9 depicts an example process for obtaining a knowledge graph datastructure, in accordance with aspects described herein. The process maybe performed by one or more computer systems. In this particularexample, the process acquires/mines a knowledge dataset (902) and buildsan initial knowledge graph (904) in the form of stored datastructure(s). In an alternative embodiment, the initial knowledge graphmay have been previously built and obtained from another source. In anycase, the process then extends this initial knowledge graph based on aspecific technical or scientific domain to obtain the extended knowledgegraph. This extension adds representations of additional domain-focusedconcepts and additional domain-focused relationships between conceptsrepresented in the initial knowledge graph (906).

FIG. 10 depicts an example process for determining whether a thoughtunit is an original idea, in accordance with aspects described herein.The process may be performed by one or more computer systems. Theprocess determines, for each pair of concepts of the correlated conceptsrepresented in the knowledge graph, a respective shortest graph distancebetween the pair of concepts (1002). This forms a collection ofdistances of the shortest paths, one for each pair of concepts of thethought unit.

The process then determines whether a number of shortest paths exceeds athreshold (1004). The shortest paths are the shortest graph distancesbetween the given pair of concepts represented in the knowledge graph. Athreshold may be set and the determining (1104) determines whether thereare at least that many shortest paths of the collection. For each pairof concepts, it is determined whether the shortest graph distancebetween the pair of concepts of the correlated concepts represented inthe knowledge graph exceeds the threshold. The thought unit may bedeemed an original idea if it is determined that the shortest graphdistance between the pair of concepts exceeds the threshold. In the casewhere there is to be multiple shortest paths, between different pairs ofnodes, that exceed the threshold, then the thought unit may be deemed anoriginal idea if it is determined that each shortest graph distancebetween additional pair(s) of concepts of the correlated conceptsrepresented in the knowledge graph exceeds the threshold.

Thus, if a number of shortest paths does exceed the threshold (1004, Y),the process declares the idea an original idea, otherwise, or if at 1004it was determined that the number of shortest paths does not exceed thethreshold, the process ends.

An embodiment in which determining whether a thought unit is an originalidea includes determining a respective shortest graph distance betweeneach pair of concepts and determining whether a number of shortest pathsexceeds some threshold(s) has an advantage that the determination oforiginality may be tailored as desired using thresholding and based ondistances between concepts.

FIG. 11 depicts an example process for invoking processing of at leastone computer, in accordance with aspects described herein. The processmay be performed by one or more computer systems, and the at least onecomputer may or may not be of the one or more computer systemsperforming the process of FIG. 11 . The process involves processing toindicate an original idea to an individual via a portal or otherinterface that the individual can view and access from a computersystem. The process initially monitors for a user request to the portalor interface (1102), for instance a request to load a webpage with theportal or an invocation of execution of a mobile app providing theportal. Then, the process invokes provision of a graphical userinterface that indicates the representation of the original idea to theindividual who expressed the thought unit (1104). This notifies theindividual that the thought unit is an original idea. In addition to aportal, example interfaces include an interface of an email, text,notification or other application.

FIG. 12 depicts another example process for invoking processing of atleast one computer, in accordance with aspects described herein. Theprocess may be performed by one or more computer systems, and the atleast one computer may or may not be of the one or more computer systemsperforming the process of FIG. 12 . The process compares a firstoriginal thought unit of a first individual to other original thoughtunits, of other individuals, determined to be original ideas and havingrepresentations thereof stored in the idea repository (1202). Then theprocess identifies a same or similar second thought unit, of the otherthought units, for which the first thought unit and the second thoughtunit share a common pair of concepts represented in the knowledge graph(1204). Different individuals may have expressed the different first andsecond ideas.

The process continues by determining whether idea sentiments of the twooriginal ideas satisfy a sentiment goal for networking the first andsecond individuals (1206) who expressed the first and second originalideas. The sentiment goal may be, for instance, a substantial similarity(e.g. within X % or range) or match (positive/positive,negative/negative, neutral/neutral) in the idea sentiments, or may be asubstantial dissimilarity or mismatch (positive/negative,negative/positive) in the idea sentiments, as examples.

If the idea sentiments do not satisfy the sentiment goal, the processends. Otherwise, the process continues by determining whether theexpression of the first thought unit by the first individual andexpression of the second thought unit by the second individual were madein a common conversation between the first individual and secondindividual (1208). If so (1208, Y), the process ends. Otherwise, if not(1208, N), the process invokes processing to network individuals (121),for instance providing a first electronic communication to a firstcomputer of the first individual and providing a second electroniccommunication to a second computer of the second individual, the firstand second electronic communications to network together the first andsecond individuals.

An embodiment in which a method includes comparing thought units andidentifying ones that are same/similar has an advantage that correlationof same/similar ideas can be leveraged to, for instance, bring the ideagenerators together. An embodiment which invokes processing to provideelectronic communications to network individuals together based on ideasimilarity has an advantage that aspects can network individuals withother individuals having similar ideas to foster collaboration andinnovation. An embodiment that networks such individuals only if theirexpressions of the ideas were not made in a common conversation has anadvantage of refraining from attempting to network individuals who arealready networked by virtual of them being involved in the conversation.Additionally, an embodiment in which a method ascertains sentimentscores of thought units and determines whether to network togetherindividuals based on the sentiment scores of their expressions has anadvantage that it enables tailoring which individuals are introduced toeach other based on their sentiments. This can advantageously giveselectability and control to bring together individuals with commonsentiments, opposing sentiments, or some other desired relation betweentheir expressed sentiments. The tone and sentiments in the fosteredmeaningful discourse may be controlled in this manner.

Although various examples are provided, variations are possible withoutdeparting from a spirit of the claimed aspects.

Processes described herein may be performed singly or collectively byone or more computer systems. FIG. 13 depicts one example of such acomputer system and associated devices to incorporate and/or use aspectsdescribed herein. A computer system may also be referred to herein as adata processing device/system, computing device/system/node, or simply acomputer. The computer system may be based on one or more of varioussystem architectures and/or instruction set architectures, such as thoseoffered by International Business Machines Corporation (Armonk, NewYork, USA), Intel Corporation (Santa Clara, California, USA) or ARMHoldings plc (Cambridge, England, United Kingdom), as examples.

FIG. 13 shows a computer system 1300 in communication with externaldevice(s) 1312. Computer system 1300 includes one or more processor(s)1302, for instance central processing unit(s) (CPUs). A processor caninclude functional components used in the execution of instructions,such as functional components to fetch program instructions fromlocations such as cache or main memory, decode program instructions, andexecute program instructions, access memory for instruction execution,and write results of the executed instructions. A processor 1302 canalso include register(s) to be used by one or more of the functionalcomponents. Computer system 1300 also includes memory 1304, input/output(I/O) devices 1308, and I/O interfaces 1310, which may be coupled toprocessor(s) 1302 and each other via one or more buses and/or otherconnections. Bus connections represent one or more of any of severaltypes of bus structures, including a memory bus or memory controller, aperipheral bus, an accelerated graphics port, and a processor or localbus using any of a variety of bus architectures. By way of example, andnot limitation, such architectures include the Industry StandardArchitecture (ISA), the Micro Channel Architecture (MCA), the EnhancedISA (EISA), the Video Electronics Standards Association (VESA) localbus, and the Peripheral Component Interconnect (PCI).

Memory 1304 can be or include main or system memory (e.g. Random AccessMemory) used in the execution of program instructions, storage device(s)such as hard drive(s), flash media, or optical media as examples, and/orcache memory, as examples. Memory 1304 can include, for instance, acache, such as a shared cache, which may be coupled to local caches(examples include L1 cache, L2 cache, etc.) of processor(s) 1302.Additionally, memory 1304 may be or include at least one computerprogram product having a set (e.g., at least one) of program modules,instructions, code or the like that is/are configured to carry outfunctions of embodiments described herein when executed by one or moreprocessors.

Memory 1304 can store an operating system 1305 and other computerprograms 1306, such as one or more computer programs/applications thatexecute to perform aspects described herein. Specifically,programs/applications can include computer readable program instructionsthat may be configured to carry out functions of embodiments of aspectsdescribed herein.

Examples of I/O devices 1308 include but are not limited to microphones,speakers, Global Positioning System (GPS) devices, cameras, lights,accelerometers, gyroscopes, magnetometers, sensor devices configured tosense light, proximity, heart rate, body and/or ambient temperature,blood pressure, and/or skin resistance, and activity monitors. An I/Odevice may be incorporated into the computer system as shown, though insome embodiments an I/O device may be regarded as an external device(1312) coupled to the computer system through one or more I/O interfaces1310.

Computer system 1300 may communicate with one or more external devices1312 via one or more I/O interfaces 1310. Example external devicesinclude a keyboard, a pointing device, a display, and/or any otherdevices that enable a user to interact with computer system 1300. Otherexample external devices include any device that enables computer system1300 to communicate with one or more other computing systems orperipheral devices such as a printer. A network interface/adapter is anexample I/O interface that enables computer system 1300 to communicatewith one or more networks, such as a local area network (LAN), a generalwide area network (WAN), and/or a public network (e.g., the Internet),providing communication with other computing devices or systems, storagedevices, or the like. Ethernet-based (such as Wi-Fi) interfaces andBluetooth® adapters are just examples of the currently available typesof network adapters used in computer systems (BLUETOOTH is a registeredtrademark of Bluetooth SIG, Inc., Kirkland, Washington, U.S.A.).

The communication between I/O interfaces 1310 and external devices 1312can occur across wired and/or wireless communications link(s) 1311, suchas Ethernet-based wired or wireless connections. Example wirelessconnections include cellular, Wi-Fi, Bluetooth®, proximity-based,near-field, or other types of wireless connections. More generally,communications link(s) 1311 may be any appropriate wireless and/or wiredcommunication link(s) for communicating data.

Particular external device(s) 1312 may include one or more data storagedevices, which may store one or more programs, one or more computerreadable program instructions, and/or data, etc. Computer system 1300may include and/or be coupled to and in communication with (e.g. as anexternal device of the computer system) removable/non-removable,volatile/non-volatile computer system storage media. For example, it mayinclude and/or be coupled to a non-removable, non-volatile magneticmedia (typically called a “hard drive”), a magnetic disk drive forreading from and writing to a removable, non-volatile magnetic disk(e.g., a “floppy disk”), and/or an optical disk drive for reading fromor writing to a removable, non-volatile optical disk, such as a CD-ROM,DVD-ROM or other optical media.

Computer system 1300 may be operational with numerous other generalpurpose or special purpose computing system environments orconfigurations. Computer system 1300 may take any of various forms,well-known examples of which include, but are not limited to, personalcomputer (PC) system(s), server computer system(s), such as messagingserver(s), thin client(s), thick client(s), workstation(s), laptop(s),handheld device(s), mobile device(s)/computer(s) such as smartphone(s),tablet(s), and wearable device(s), multiprocessor system(s),microprocessor-based system(s), telephony device(s), networkappliance(s) (such as edge appliance(s)), virtualization device(s),storage controller(s), set top box(es), programmable consumerelectronic(s), network PC(s), minicomputer system(s), mainframe computersystem(s), and distributed cloud computing environment(s) that includeany of the above systems or devices, and the like.

Aspects described herein may be incorporated into and/or use a cloudcomputing environment. It is to be understood that although thisdisclosure includes a detailed description on cloud computing,implementation of the teachings recited herein are not limited to acloud computing environment. Rather, embodiments of the presentinvention are capable of being implemented in conjunction with any othertype of computing environment now known or later developed.

Cloud computing is a model of service delivery for enabling convenient,on-demand network access to a shared pool of configurable computingresources (e.g. networks, network bandwidth, servers, processing,memory, storage, applications, virtual machines, and services) that canbe rapidly provisioned and released with minimal management effort orinteraction with a provider of the service. This cloud model may includeat least five characteristics, at least three service models, and atleast four deployment models.

Characteristics are as follows:

On-demand self-service: a cloud consumer can unilaterally provisioncomputing capabilities, such as server time and network storage, asneeded automatically without requiring human interaction with theservice's provider.

Broad network access: capabilities are available over a network andaccessed through standard mechanisms that promote use by heterogeneousthin or thick client platforms (e.g., mobile phones, laptops, and PDAs).

Resource pooling: the provider's computing resources are pooled to servemultiple consumers using a multi-tenant model, with different physicaland virtual resources dynamically assigned and reassigned according todemand. There is a sense of location independence in that the consumergenerally has no control or knowledge over the exact location of theprovided resources but may be able to specify location at a higher levelof abstraction (e.g., country, state, or datacenter).

Rapid elasticity: capabilities can be rapidly and elasticallyprovisioned, in some cases automatically, to quickly scale out andrapidly released to quickly scale in. To the consumer, the capabilitiesavailable for provisioning often appear to be unlimited and can bepurchased in any quantity at any time.

Measured service: cloud systems automatically control and optimizeresource use by leveraging a metering capability at some level ofabstraction appropriate to the type of service (e.g., storage,processing, bandwidth, and active user accounts). Resource usage can bemonitored, controlled, and reported providing transparency for both theprovider and consumer of the utilized service.

Service Models are as follows:

Software as a Service (SaaS): the capability provided to the consumer isto use the provider's applications running on a cloud infrastructure.The applications are accessible from various client devices through athin client interface such as a web browser (e.g., web-based email). Theconsumer does not manage or control the underlying cloud infrastructureincluding network, servers, operating systems, storage, or evenindividual application capabilities, with the possible exception oflimited user-specific application configuration settings.

Platform as a Service (PaaS): the capability provided to the consumer isto deploy onto the cloud infrastructure consumer-created or acquiredapplications created using programming languages and tools supported bythe provider. The consumer does not manage or control the underlyingcloud infrastructure including networks, servers, operating systems, orstorage, but has control over the deployed applications and possiblyapplication hosting environment configurations.

Infrastructure as a Service (IaaS): the capability provided to theconsumer is to provision processing, storage, networks, and otherfundamental computing resources where the consumer is able to deploy andrun arbitrary software, which can include operating systems andapplications. The consumer does not manage or control the underlyingcloud infrastructure but has control over operating systems, storage,deployed applications, and possibly limited control of select networkingcomponents (e.g., host firewalls).

Deployment Models are as follows:

Private cloud: the cloud infrastructure is operated solely for anorganization. It may be managed by the organization or a third party andmay exist on-premises or off-premises.

Community cloud: the cloud infrastructure is shared by severalorganizations and supports a specific community that has shared concerns(e.g., mission, security requirements, policy, and complianceconsiderations). It may be managed by the organizations or a third partyand may exist on-premises or off-premises.

Public cloud: the cloud infrastructure is made available to the generalpublic or a large industry group and is owned by an organization sellingcloud services.

Hybrid cloud: the cloud infrastructure is a composition of two or moreclouds (private, community, or public) that remain unique entities butare bound together by standardized or proprietary technology thatenables data and application portability (e.g., cloud bursting forloadbalancing between clouds).

A cloud computing environment is service oriented with a focus onstatelessness, low coupling, modularity, and semantic interoperability.At the heart of cloud computing is an infrastructure comprising anetwork of interconnected nodes. One such node is node 10 depicted inFIG. 14 .

Computing node 10 is only one example of a suitable cloud computing nodeand is not intended to suggest any limitation as to the scope of use orfunctionality of embodiments of the invention described herein.Regardless, cloud computing node 10 is capable of being implementedand/or performing any of the functionality set forth hereinabove.

Referring now to FIG. 14 , illustrative cloud computing environment 50is depicted. As shown, cloud computing environment 50 comprises one ormore computing nodes 10 with which local computing devices used by cloudconsumers, such as, for example, smartphone or other mobile device 54A,desktop computer 54B, laptop computer 54C, and/or automobile computersystem 54N may communicate. Nodes 10 may communicate with one another.They may be grouped (not shown) physically or virtually, in one or morenetworks, such as Private, Community, Public, or Hybrid clouds asdescribed hereinabove, or a combination thereof. This allows cloudcomputing environment 50 to offer infrastructure, platforms and/orsoftware as services for which a cloud consumer does not need tomaintain resources on a local computing device. It is understood thatthe types of computing devices 54A-N shown in FIG. 14 are intended to beillustrative only and that computing nodes 10 and cloud computingenvironment 50 can communicate with any type of computerized device overany type of network and/or network addressable connection (e.g., using aweb browser).

Referring now to FIG. 15 , a set of functional abstraction layersprovided by cloud computing environment 50 (FIG. 14 ) is shown. Itshould be understood in advance that the components, layers, andfunctions shown in FIG. 15 are intended to be illustrative only andembodiments of the invention are not limited thereto. As depicted, thefollowing layers and corresponding functions are provided:

Hardware and software layer 60 includes hardware and softwarecomponents. Examples of hardware components include mainframes 61; RISC(Reduced Instruction Set Computer) architecture based servers 62;servers 63; blade servers 64; storage devices 65; and networks andnetworking components 66. In some embodiments, software componentsinclude network application server software 67 and database software 68.

Virtualization layer 70 provides an abstraction layer from which thefollowing examples of virtual entities may be provided: virtual servers71; virtual storage 72; virtual networks 73, including virtual privatenetworks; virtual applications and operating systems 74; and virtualclients 75.

In one example, management layer 80 may provide the functions describedbelow. Resource provisioning 81 provides dynamic procurement ofcomputing resources and other resources that are utilized to performtasks within the cloud computing environment. Metering and Pricing 82provide cost tracking as resources are utilized within the cloudcomputing environment, and billing or invoicing for consumption of theseresources. In one example, these resources may comprise applicationsoftware licenses. Security provides identity verification for cloudconsumers and tasks, as well as protection for data and other resources.User portal 83 provides access to the cloud computing environment forconsumers and system administrators. Service level management 84provides cloud computing resource allocation and management such thatrequired service levels are met. Service Level Agreement (SLA) planningand fulfillment 85 provide pre-arrangement for, and procurement of,cloud computing resources for which a future requirement is anticipatedin accordance with an SLA.

Workloads layer 90 provides examples of functionality for which thecloud computing environment may be utilized. Examples of workloads andfunctions which may be provided from this layer include: mapping andnavigation 91; software development and lifecycle management 92; virtualclassroom education delivery 93; data analytics processing 94;transaction processing 95; and original idea extraction 96.

The present invention may be a system, a method, and/or a computerprogram product at any possible technical detail level of integration.The computer program product may include a computer readable storagemedium (or media) having computer readable program instructions thereonfor causing a processor to carry out aspects of the present invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, configuration data for integrated circuitry, oreither source code or object code written in any combination of one ormore programming languages, including an object oriented programminglanguage such as Smalltalk, C++, or the like, and procedural programminglanguages, such as the “C” programming language or similar programminglanguages. The computer readable program instructions may executeentirely on the user's computer, partly on the user's computer, as astand-alone software package, partly on the user's computer and partlyon a remote computer or entirely on the remote computer or server. Inthe latter scenario, the remote computer may be connected to the user'scomputer through any type of network, including a local area network(LAN) or a wide area network (WAN), or the connection may be made to anexternal computer (for example, through the Internet using an InternetService Provider). In some embodiments, electronic circuitry including,for example, programmable logic circuitry, field-programmable gatearrays (FPGA), or programmable logic arrays (PLA) may execute thecomputer readable program instructions by utilizing state information ofthe computer readable program instructions to personalize the electroniccircuitry, in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the blocks may occur out of theorder noted in the Figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

In addition to the above, one or more aspects may be provided, offered,deployed, managed, serviced, etc. by a service provider who offersmanagement of customer environments. For instance, the service providercan create, maintain, support, etc. computer code and/or a computerinfrastructure that performs one or more aspects for one or morecustomers. In return, the service provider may receive payment from thecustomer under a subscription and/or fee agreement, as examples.Additionally or alternatively, the service provider may receive paymentfrom the sale of advertising content to one or more third parties.

In one aspect, an application may be deployed for performing one or moreembodiments. As one example, the deploying of an application comprisesproviding computer infrastructure operable to perform one or moreembodiments.

As a further aspect, a computing infrastructure may be deployedcomprising integrating computer readable code into a computing system,in which the code in combination with the computing system is capable ofperforming one or more embodiments.

As yet a further aspect, a process for integrating computinginfrastructure comprising integrating computer readable code into acomputer system may be provided. The computer system comprises acomputer readable medium, in which the computer medium comprises one ormore embodiments. The code in combination with the computer system iscapable of performing one or more embodiments.

Although various embodiments are described above, these are onlyexamples. For example, computing environments of other architectures canbe used to incorporate and use one or more embodiments.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting. As used herein, thesingular forms “a”, “an” and “the” are intended to include the pluralforms as well, unless the context clearly indicates otherwise. It willbe further understood that the terms “comprises” and/or “comprising”,when used in this specification, specify the presence of statedfeatures, integers, steps, operations, elements, and/or components, butdo not preclude the presence or addition of one or more other features,integers, steps, operations, elements, components and/or groups thereof.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims below, if any, areintended to include any structure, material, or act for performing thefunction in combination with other claimed elements as specificallyclaimed. The description of one or more embodiments has been presentedfor purposes of illustration and description, but is not intended to beexhaustive or limited to in the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the art. Theembodiment was chosen and described in order to best explain variousaspects and the practical application, and to enable others of ordinaryskill in the art to understand various embodiments with variousmodifications as are suited to the particular use contemplated.

What is claimed is:
 1. A computer-implemented method comprising:electronically capturing expression of one or more individuals aswritten text data using one or more electronic devices; obtaining aknowledge graph data structure for a knowledge dataset, the knowledgegraph comprising representations of concepts and relationships betweenthe concepts as identified from the knowledge dataset; automaticallytopic modeling the written text data to ascertain a plurality of thoughtunits expressed in the written text data, and identifying, for eachthought unit, a respective set of concepts of the thought unit; mappinga thought unit of the plurality of thought units to the knowledge graphby correlating the concepts of the thought unit to a correlated set ofconcepts represented in the knowledge graph; determining that thethought unit is an original idea, the determining being based on a graphdistance in the knowledge graph between at least some of the correlatedconcepts represented in the knowledge graph, and being based further ona cardinality of the set of concepts of the thought unit exceeding athreshold; and based on determining that the thought unit is an originalidea, storing a representation of the original idea to an idearepository and invoking processing of at least one computer.
 2. Themethod of claim 1, wherein the capturing expression as written text datacomprises transforming a voice stream of a user to a textualrepresentation of the voice stream.
 3. The method of claim 1, whereinthe capturing expression as written text data comprises transforming atleast one selected from the group consisting of: (i) drawings and (ii)user gestures, to a textual representation.
 4. The method of claim 1,wherein the concepts of the thought unit include concepts explicitlyexpressed in the written text data as the thought unit and one or moreconcepts identified from a context in which the thought unit wasexpressed.
 5. The method of claim 1, wherein the thought unit ischaracterized by an identification of an individual expressing thethought unit, the identified concepts of the thought unit, at least onesentiment score of the thought unit, and an indication of any otherindividuals receiving a communication in which the thought unit wasexpressed by the individual.
 6. The method of claim 1, furthercomprising assigning relevance scores to the concepts of the thoughtunit, wherein the determining that the thought unit is an original ideais further based on the relevance scores assigned to the concepts. 7.The method of claim 1, wherein the obtaining the knowledge graph furthercomprises assigning weights to the concepts represented in the knowledgegraph, and wherein the determining that the thought unit is an originalidea is further based on the weights assigned to the correlated conceptsrepresented in the knowledge graph.
 8. The method of claim 7, whereinthe weight assigned to a concept represented in the knowledge graph isbased on at least one selected from the group consisting of: (i) area ofinnovation to which the concept pertains and (ii) a frequency or trendin coverage of the concept in news media.
 9. The method of claim 1,wherein the invoking processing of at least one computer invokesprovision of a graphical user interface that indicates therepresentation of the original idea to an individual, of the one or moreindividuals, who expressed the thought unit, to notify the individualthat the thought unit is an original idea.
 10. The method of claim 1,further comprising: comparing the thought unit to other thought unitsdetermined to be original ideas and having representations thereofstored in the idea repository; and identifying another thought unit, ofthe other thought units, for which the thought unit and the anotherthought unit share a common pair of concepts represented in theknowledge graph, wherein the one or more individuals comprise a firstindividual who expressed the thought unit and a second individual whoexpressed the another thought unit.
 11. The method of claim 10, whereinbased on determining that the expression of the thought unit by thefirst individual and expression of the another thought unit by thesecond individual were not made in a common conversation between thefirst individual and second individual, the invoking processing of theat least one computer comprises providing a first electroniccommunication to a first computer of the first individual and providinga second electronic communication to a second computer of the secondindividual, the first and second electronic communications to networktogether the first and second individuals.
 12. The method of claim 11,further comprising: ascertaining a first sentiment score of the thoughtunit and a second sentiment score of the another thought unit; anddetermining whether to network together the first and second individualsbased on the first and second sentiment scores.
 13. A computer systemcomprising: a memory; and a processor in communication with the memory,wherein the computer system is configured to perform a methodcomprising: electronically capturing expression of one or moreindividuals as written text data using one or more electronic devices;obtaining a knowledge graph data structure for a knowledge dataset, theknowledge graph comprising representations of concepts and relationshipsbetween the concepts as identified from the knowledge dataset;automatically topic modeling the written text data to ascertain aplurality of thought units expressed in the written text data, andidentifying, for each thought unit, a respective set of concepts of thethought unit; mapping a thought unit of the plurality of thought unitsto the knowledge graph by correlating the concepts of the thought unitto a correlated set of concepts represented in the knowledge graph;determining that the thought unit is an original idea, the determiningbeing based on a graph distance in the knowledge graph between at leastsome of the correlated concepts represented in the knowledge graph, andbeing based further on a cardinality of the set of concepts of thethought unit exceeding a threshold; and based on determining that thethought unit is an original idea, storing a representation of theoriginal idea to an idea repository and invoking processing of at leastone computer.
 14. The computer system of claim 13, wherein the methodfurther comprises assigning relevance scores to the concepts of thethought unit, wherein the determining that the thought unit is anoriginal idea is further based on the relevance scores assigned to theconcepts.
 15. The computer system of claim 13, wherein the obtaining theknowledge graph further comprises assigning weights to the conceptsrepresented in the knowledge graph, and wherein the determining that thethought unit is an original idea is further based on the weightsassigned to the correlated concepts represented in the knowledge graph,wherein the weight assigned to a concept represented in the knowledgegraph is based on at least one selected from the group consisting of:(i) area of innovation to which the concept pertains and (ii) afrequency or trend in coverage of the concept in news media.
 16. Thecomputer system of claim 15, wherein the method further comprises:comparing the thought unit to other thought units determined to beoriginal ideas and having representations thereof stored in the idearepository; and identifying another thought unit, of the other thoughtunits, for which the thought unit and the another thought unit share acommon pair of concepts represented in the knowledge graph, wherein theone or more individuals comprise a first individual who expressed thethought unit and a second individual who expressed the another thoughtunit, wherein based on determining that the expression of the thoughtunit by the first individual and expression of the another thought unitby the second individual were not made in a common conversation betweenthe first individual and second individual, the invoking processing ofthe at least one computer comprises providing a first electroniccommunication to a first computer of the first individual and providinga second electronic communication to a second computer of the secondindividual, the first and second electronic communications to networktogether the first and second individuals.
 17. A computer programproduct comprising: a computer readable storage medium readable by atleast one processor and storing instructions for execution by the atleast one processor for performing a method comprising: electronicallycapturing expression of one or more individuals as written text datausing one or more electronic devices; obtaining a knowledge graph datastructure for a knowledge dataset, the knowledge graph comprisingrepresentations of concepts and relationships between the concepts asidentified from the knowledge dataset; automatically topic modeling thewritten text data to ascertain a plurality of thought units expressed inthe written text data, and identifying, for each thought unit, arespective set of concepts of the thought unit; mapping a thought unitof the plurality of thought units to the knowledge graph by correlatingthe concepts of the thought unit to a correlated set of conceptsrepresented in the knowledge graph; determining that the thought unit isan original idea, the determining being based on a graph distance in theknowledge graph between at least some of the correlated conceptsrepresented in the knowledge graph, and being based further on acardinality of the set of concepts of the thought unit exceeding athreshold; and based on determining that the thought unit is an originalidea, storing a representation of the original idea to an idearepository and invoking processing of at least one computer.
 18. Thecomputer program product of claim 17, wherein the method furthercomprises assigning relevance scores to the concepts of the thoughtunit, wherein the determining that the thought unit is an original ideais further based on the relevance scores assigned to the concepts. 19.The computer program product of claim 17, wherein the obtaining theknowledge graph further comprises assigning weights to the conceptsrepresented in the knowledge graph, and wherein the determining that thethought unit is an original idea is further based on the weightsassigned to the correlated concepts represented in the knowledge graph,wherein the weight assigned to a concept represented in the knowledgegraph is based on at least one selected from the group consisting of:(i) area of innovation to which the concept pertains and (ii) afrequency or trend in coverage of the concept in news media.
 20. Thecomputer program product of claim 17, wherein the method furthercomprises: comparing the thought unit to other thought units determinedto be original ideas and having representations thereof stored in theidea repository; and identifying another thought unit, of the otherthought units, for which the thought unit and the another thought unitshare a common pair of concepts represented in the knowledge graph,wherein the one or more individuals comprise a first individual whoexpressed the thought unit and a second individual who expressed theanother thought unit, wherein based on determining that the expressionof the thought unit by the first individual and expression of theanother thought unit by the second individual were not made in a commonconversation between the first individual and second individual, theinvoking processing of the at least one computer comprises providing afirst electronic communication to a first computer of the firstindividual and providing a second electronic communication to a secondcomputer of the second individual, the first and second electroniccommunications to network together the first and second individuals.